(Intercept) pib
6.935727e+01 6.186213e-04
Modelos Lineares: Regressão e Classificação
Na Semana 1, formulamos o problema de aprendizado de forma geral. Para regressão,
\[ \mathcal D_n \longrightarrow \widehat g \approx r(x)=E(Y\mid X=x) \]
Agora precisamos escolher uma classe de funções para aproximar \(r(x)\).
Começaremos pela classe mais simples e interpretável: modelos lineares.
Temos uma função de regressão desconhecida:
\[ r(x)=E(Y\mid X=x) \]
E se aproximarmos essa função por
\[ \boxed{g(x)=\beta_0+\beta_1x?} \]
Essa escolha define uma classe de modelos.
No caso de uma única covariável:
\[ \mathcal G_{\text{linear}} = \left\{ g(x)=\beta_0+\beta_1x: \beta_0,\beta_1\in\mathbb R \right\} \]
Os dados não escolhem a classe.
Nós escolhemos a classe; o treinamento escolhe os parâmetros.
\[ \boxed{\text{Dados}} \rightarrow \boxed{\text{Classe linear}} \rightarrow \boxed{\text{Treinamento}} \rightarrow \boxed{\widehat g(x)} \]
Para a classe linear, treinar significa encontrar
\[ \widehat\beta_0,\widehat\beta_1 \]
Pergunta:
\[ \boxed{\text{Como escolher a melhor reta?}} \]
Para a observação \(i\):
\[ \widehat y_i=g(x_i) \]
e o erro observado é
\[ e_i=y_i-\widehat y_i \]
O treinamento precisa transformar esses erros em um único critério.
Sabemos que:
\[ L(y,\widehat y)=(y-\widehat y)^2 \]
Para toda a amostra:
\[ RSS(\beta_0,\beta_1) = \sum_{i=1}^n \left[ y_i-(\beta_0+\beta_1x_i) \right]^2 \]
O treinamento resolve
\[ \boxed{ (\widehat\beta_0,\widehat\beta_1) = \arg\min_{\beta_0,\beta_1} \sum_{i=1}^{n} \left[ y_i-(\beta_0+\beta_1x_i) \right]^2 } \]
Não estamos apenas “traçando uma reta”.
Estamos resolvendo um problema de otimização.
A reta de MQO é aquela que minimiza a soma dos erros quadráticos.
(Intercept) pib
6.935727e+01 6.186213e-04
O algoritmo estima os parâmetros a partir da amostra.
Escrevemos
\[ \widehat g(x) = \widehat\beta_0+\widehat\beta_1x \]
Para
\[ \widehat g(x)=\widehat\beta_0+\widehat\beta_1x, \]
Uma interpretação algébrica pode não ter interpretação substantiva útil fora da região observada dos dados.
Para uma nova observação \(x_0\):
\[ \widehat y_0 = \widehat g(x_0) = \widehat\beta_0+\widehat\beta_1x_0 \]
O modelo transforma covariáveis em predições.
\[ \widehat y_i=\widehat g(x_i) \]
\[ e_i=y_i-\widehat y_i \]
Logo,
\[ \boxed{y_i=\widehat y_i+e_i} \]
As linhas verticais representam os resíduos.
Com \(p\) covariáveis:
\[ g(\mathbf x) = \beta_0+ \beta_1x_1+\cdots+\beta_px_p \]
ou
\[ g(\mathbf x) = \beta_0+\sum_{j=1}^{p}\beta_jx_j \]
A ideia não muda: escolhemos os coeficientes que minimizam a perda na amostra.
\[ \mathbf y = \mathbf X\boldsymbol\beta+\boldsymbol\varepsilon \]
A solução de mínimos quadrados, quando existe de forma única, é
\[
\widehat{\boldsymbol\beta}
=
(\mathbf X^\top\mathbf X)^{-1}
\mathbf X^\top\mathbf y
\]
\[ \boxed{ \text{Classe linear} + \text{perda quadrática} + \text{otimização} = \text{MQO} } \]
O resultado do treinamento é uma função
\[ \widehat g(x) \]
que poderá ser utilizada para novas observações.
No treinamento perguntamos:
Qual reta minimiza o erro nos dados observados?
Agora perguntamos:
Essa reta funcionará bem em dados que ainda não vimos?
Essa é uma pergunta sobre generalização.
\[ MSE_{\text{treino}} = \frac{1}{n} \sum_{i=1}^{n} (y_i-\widehat y_i)^2 \]
E
\[ RMSE_{\text{treino}} = \sqrt{MSE_{\text{treino}}} \]
Quanto menor, melhor o ajuste à amostra utilizada no treinamento.
\[ RMSE = \sqrt{ \frac1n \sum_{i=1}^{n} (y_i-\widehat y_i)^2 } \]
Sempre pergunte: RMSE calculado em qual conjunto de dados?
\[ R^2 = 1- \frac{ \sum_i(y_i-\widehat y_i)^2 }{ \sum_i(y_i-\bar y)^2 } \]
Interpretação usual: fração da variabilidade de \(Y\) explicada pelo modelo na amostra avaliada.
Um modelo pode apresentar
\[ R^2_{\text{treino}}\uparrow \]
simplesmente por se tornar mais flexível.
Portanto,
\[ \boxed{ R^2\text{ alto no treino} \not\Rightarrow \text{boa predição fora da amostra} } \]
Voltemos aos resíduos.
Se o modelo capturasse adequadamente a estrutura média,
\[ E(e\mid X=x)\approx 0 \]
Um padrão sistemático sugere que
\[ r(x) \not\approx \beta_0+\beta_1x \]
O problema pode estar na classe de modelos escolhida.
A regressão linear não afirma que os pontos precisam formar uma reta perfeita.
Ela supõe que a média condicional pode ser representada por
\[ E(Y\mid X=x) = \beta_0+\beta_1x \]
O ruído continua existindo ao redor dessa função.
Como os dados foram gerados com relação aproximadamente logarítmica, podemos considerar
\[ g(x) = \beta_0+\beta_1\log(x) \]
Sim! Ele é linear nos parâmetros:
\[ g(x) = \beta_0+\beta_1\log(x) \]
A covariável foi transformada, mas
\[ \beta_0,\beta_1 \]
continuam entrando linearmente no modelo.
\[ g_1(x)=\beta_0+\beta_1x \]
Mais simples, porém incapaz de representar a curvatura observada.
\[ g_2(x)=\beta_0+\beta_1\log(x) \]
Introduz uma transformação escolhida pelo analista.
Podemos ampliar sistematicamente a classe:
\[ g(x) = \beta_0+ \beta_1x+ \beta_2x^2+ \cdots+ \beta_px^p \]
Agora surge uma nova questão:
\[ \boxed{\text{Qual grau }p\text{ devemos escolher?}} \]
\[ \boxed{\eta(\mathbf x)=P(Y=1\mid\mathbf X=\mathbf x)} \]
A regressão logística assume
\[ \boxed{ \eta(\mathbf x) = \frac{ \exp(\beta_0+\mathbf x^t\boldsymbol\beta) }{ 1+\exp(\beta_0+\mathbf x^t\boldsymbol\beta) } } \]
ou
\[ \boxed{ \operatorname{logit}\{\eta(\mathbf x)\} = \beta_0+\mathbf x^t\boldsymbol\beta } \]
Estimamos
\[ \widehat{\boldsymbol\beta} \]
e obtemos
\[ \widehat\eta(\mathbf x) = \frac{ \exp(\widehat\beta_0+\mathbf x^t\widehat{\boldsymbol\beta}) }{ 1+\exp(\widehat\beta_0+\mathbf x^t\widehat{\boldsymbol\beta}) } \]
A classificação é então produzida por um cutoff
Com cutoff \(0.5\):
\[ \widehat\eta(\mathbf x)>0.5 \]
é equivalente a
\[ \boxed{ \widehat\beta_0+ \mathbf x^t\widehat{\boldsymbol\beta} > 0 } \]
Portanto, a regressão logística produz uma fronteira linear no espaço original das covariáveis
Não precisamos reestudar toda a teoria de modelos lineares generalizados
Aqui, regressão logística é importante porque ilustra claramente:
\[ \boxed{ \text{estimar probabilidade} \rightarrow \text{aplicar regra de decisão} } \]
| Regressão | Classificação |
|---|---|
| \(E(Y\mid X)=\beta_0+X^t\beta\) | \(\operatorname{logit}(\eta)=\beta_0+X^t\beta\) |
| saída quantitativa | probabilidade |
\[ \boxed{\widehat g_c(\mathbf x)=I\{\widehat\eta(\mathbf x)>c\}} \]
EST335 — Semana 2